package com.zmc.order.infrastructure.enums;

import lombok.Getter;

/**
 * @Author：zmc
 * @Date：2024/11/7 14:39
 */

@Getter
public enum OrderEnum {

    ORDER_STATUS_WAIT_FOR_PAY(0, "创建订单-待付款"),
    ORDER_STATUS_WAIT_SEND_GOOD(1, "已支付-待发货"),
    ORDER_STATUS_WAIT_GET_GOOD(2, "已创建物流单-待上门取件"),
    ORDER_STATUS_HAS_SEND_GOOD(3, "已发货-待收货"),
    ORDER_STATUS_COMPLETE(4, "已收货-待评价"),
    ORDER_STATUS_CLOSE(5, "已完成"),
    ORDER_STATUS_REFUNDING(6, "退款中"),
    ORDER_STATUS_REFUNDED(7, "已退款"),
    ORDER_STATUS_INVALID_ORDER(8, "已取消"),
    ORDER_STATUS_TOTAL_FINISH(11, "总订单完成支付"),


    ORDER_SOURCE_PC(0,"PC订单"),
    ORDER_SOURCE_APP(1,"APP订单"),

    //0->待处理；1->退货中；2->已完成；3->已拒绝
    ORDER_REFUND_PENDING(0, "待处理"),
    ORDER_REFUND_PROCESSING(1, "退货中"),
    ORDER_REFUND_COMPLETE(2, "已完成"),
    ORDER_REFUND_REJECT(3, "已拒绝"),

    //订单更新器
    ORDER_UPDATER_CREATE(0, "创建订单"),
    ORDER_UPDATER_SPLIT(1, "分单"),
    ORDER_UPDATER_CANCEL(2, "取消订单"),
    ORDER_UPDATER_APPLY_REFUND(3, "申请退款"),
    ORDER_UPDATER_APPROVE_REFUND(4, "审批退款"),
    ORDER_UPDATER_REFUND_HANDLER(5, "退款处理"),
    ORDER_UPDATER_CREATE_LOGISTICS(6, "创建物流单"),
    ORDER_UPDATER_CONFIRM_SHIPMENT(7, "订单确认发货"),
    ORDER_UPDATER_CONFIRM_RECEIVE(8, "订单确认收货"),
    ;

    OrderEnum(int code, String msg) {
        this.code = code;
        this.msg = msg;
    }

    private final int code;
    
    private final String msg;

}
